import EmptyRecord from '../../components/EmptyRecord/EmptyRecord.vue';
import PromptPopup from '../../components/PromptPopup/PromptPopup.vue';
import api from '../../http/api';
import FilterPopup from '@/components/PopUpSift/PopUpSift.vue';
import date from '@/computingTool/date.js';
export default {
	components: {
		PromptPopup,
		EmptyRecord,
		FilterPopup
	},
  data() {
    return {
		showFilter: false,
		filterData: {
			startTime: '',
			endTime: '',
			orderTypes: ['bank', 'wechat'],
			orderStatus: ['pending']
		},
		// 类型映射
		typeMap: {
			bank: '银行卡',
			wechat: '微信',
			alipay: '支付宝',
			unionpay: '云闪付',
			digital: '数字人民币',
			dingtalk: '钉钉'
		},
		// 状态映射
		statusMap: {
			pending: '待支付',
			confirmed: '待确认',
			completed: '已完成',
			paused: '暂停中',
			canceled: '已取消'
		},
      tabs: ['待付订单', '已抢单', '已支付', '已完成', '已失败','已冻结'],
      activeTab: 0,
      scrollLeft: 0,
	  option:'1',//弹窗默认值
	  pointOut:'',//弹窗提示内容
	  
	  dataList:[],
	  page: 1, // 当前页码
	  pageSize: 10, // 每页数据量
	  isLoading: true, // 防止重复加载
	  noMoreData: false, // 是否已无更多数据
	  
	  status:0,//订单状态
	  id:'',//存储选中待支付订单id
	  
	  userAllInfo:{},//用户详细信息，包含资金
	  statusBarHeight:0,//导航栏高度
	  
	  itemData:{},//弹窗数据
    }
  },
  mounted() {
    
  },
  onLoad() {
  	//this.loadData(); // 首次加载数据
	// 动态获取状态栏高度（App 端）
	// #ifdef APP-PLUS
	this.statusBarHeight = plus.navigator.getStatusbarHeight();
	// #endif
  },
  onShow(){
	  this.loadData(); // 首次加载数据
	  this.getUerInfo();//用户资金信息
  },
  methods: {
    selectTab(index) {
      this.activeTab = index;
	  this.status = index;
	  this.dataList = [];
	  this.loadData();
    },
	//获取用户数据
	getUerInfo(){
		api.getUerInfo().then(res=>{
			if(res.code==1){
				this.userAllInfo = res.data;
			}else{
				uni.showToast({ title: res.mag, icon: 'none' });
			}
		})
	},
    // 初始化加载数据
    loadData() {
		this.page = 1;
		api.substitutePayment({
			page: this.page,
			limit: this.pageSize,
			status:this.status,
		}).then(res=>{
			if(res.code==1){
				this.dataList = res.data.list;
				this.noMoreData = false;
			}
		}).catch(err=>{
			console.error('加载数据失败:', err);
		}).finally(fee=>{
			this.isLoading = false;
		})
    },
	//多次加载，拼接数据
	moreData() {
		this.page++;
		api.substitutePayment({
			page: this.page,
			limit: this.pageSize,
			status:this.status,
		}).then(res=>{
			if(res.code==1){
				if(res.data.list.page == 0){
					this.noMoreData = true; // 标记无更多数据
					uni.showToast({ title: '没有更多数据了', icon: 'none' });
					this.page--;
				}else{
					this.dataList = [...this.dataList, ...res.data.list]; // 合并新数据
				}
			}else{
				uni.showToast({ title: res.msg, icon: 'none' });
			}
		}).catch(err=>{
			console.error('加载数据失败:', err);
		}).finally(fee=>{
			this.isLoading = false;
		})
	},
    switchTab(index) {
    	this.activeTab = index;
    	if(index == 1){
    		this.tradeList = [];
    	}else{
    		this.tradeList = [1, 2, 3, 4, 5, 6, 7, 8,1, 2, 3, 4, 5, 6, 7, 8];
    	}
    	// 添加加载对应数据的逻辑
    },
	//抢单
	grabOrder(id){
		let that = this;
		api.grabOrder({
			id:id,
		}).then(res=>{
			if(res.code==1){
				uni.showToast({ title: '抢单成功', icon: 'none' });
				/* 抢单后刷新数据 */
				setTimeout(function () {
					uni.showLoading();
				}, 1000);
				setTimeout(function () {
					uni.hideLoading();
					that.loadData();
				}, 2000);
			}else{
				uni.showToast({ title: res.msg, icon: 'none' });
				/* 抢单后刷新数据 */
				this.page = 1
				this.loadData();
			}
		}).catch(err=>{
			uni.showToast({ title: res.msg, icon: 'none' });
		})
	},
	//复制订单号
	copyOrderNumber(orderNumber){
		uni.setClipboardData({
			data: orderNumber,
			success: () => {
				uni.showToast({
					title: '订单号已复制',
					icon: 'success'
				});
			}
		});
	},
	//筛选
	sift(){
		this.showFilter = true;
	},
	handleOrderTypesUpdate(newTypes) {
		this.filterData.orderTypes = newTypes;
	},
	handleOrderStatusUpdate(newStatus) {
		this.filterData.orderStatus = newStatus;
	},
	handlePickTime(type) {
		//console.log('ss')
		// 调用Uniapp日期选择器
	
	},
	handleDateTimeChange(returnV) {
		// 接收子组件返回的对象
		console.log("选择的时间文本:", returnV.text);
		console.log("选择的时间值:", returnV.value);
	
		// 更新父组件数据（可选）
		this.selectedDateTime = returnV.value;
	
		// 其他业务逻辑...
	},
	resetFilter() {
		this.filterData = {
			startTime: '',
			endTime: '',
			orderTypes: [],
			orderStatus: []
		};
	},
	applyFilter(filter) {
		console.log('应用筛选条件:', filter);
		uni.showToast({
			title: '筛选条件已应用',
			icon: 'success'
		});
		this.showFilter = false;
	},
	//滚动底部，请求新数据
	GetNewData(){
		console.log("请求数据")
	  if (this.isLoading || this.noMoreData) return; // 避免重复加载
	  this.isLoading = true;
	  this.moreData();
	},
	//提示弹窗
	tradePassword(type,data) {
	  if(type =='pay'){
		  this.pointOut = '请复制支付账号或扫码完成支付'
		  this.id = data.id;
		  this.itemData = data;
	  }
	  this.option = '4';
	  this.$refs.popupOut.open();
	},
	//弹窗确定
	collectMoney(){
		let that = this;
		api.confirmedPayment({
			id:this.id
		}).then(res=>{
			if(res.code==1){
				uni.showToast({ title: '已确认支付', icon: 'none' });
				setTimeout(function () {
					uni.showLoading();
				}, 1000);
				setTimeout(function () {
					uni.hideLoading();
					that.loadData();
				}, 2000);
			}else{
				uni.showToast({ title: res.mag, icon: 'none' });
			}
		}).catch(err=>{
			
		}).finally(fee=>{
			this.$refs.popupOut.closeModal();
		})
	},
	/* 过滤器start */
	//收款渠道
	paytype(value){
		if(value==1){
			return '银行卡'
		}else if(value==2){
			return '微信'
		}else if(value==3){
			return '支付宝'
		}else if(value==4){
			return '云闪付'
		}else if(value==5){
			return '数字人民币'
		}else if(value==6){
			return '钉钉'
		}
	},
	//收款渠道图片
	payimg(value){
		if(value==1){
			return '/static/payImg/yinghangkazhuangzhang.png'
		}else if(value==2){
			return '/static/payImg/weixin.png'
		}else if(value==3){
			return '/static/payImg/zhifubao.png'
		}else if(value==4){
			return '/static/payImg/yunshanfu.png'
		}else if(value==5){
			return '/static/payImg/shuzirenmingbi.png'
		}else if(value==6){
			return '/static/payImg/dingding.png'
		}
	},
	//订单状态
	orderStart(value){
		if(value==0){
			return '待支付'
		}else if(value==1){
			return '已抢单'
		}else if(value==2){
			return '已支付'
		}else if(value==3){
			return '已完成'
		}else if(value==4){
			return '已取消'
		}else if(value==5){
			return '已冻结'
		}
	},
	//时间戳
	timeString(value){
		// 1. 转换时间戳
		const timestamp = value;
		const millis = timestamp * 1000;
		
		// 2. 格式化为字符串"2025-07-18 17:59:55" (北京时间)
		const dateStr = new Date(millis).Format("yyyy-MM-dd hh:mm:ss");
		return dateStr
		
		// 3. 使用自定义格式 "2025年07月18日 17时59分"
		// const customFormat = new Date(millis).Format("yyyy年MM月dd日 hh时mm分");
	},
	/* 过滤器end */
  },
  onPullDownRefresh() {
  	this.page = 1
  	this.loadData(); // 首次加载数据
  	setTimeout(()=>{
  		uni.stopPullDownRefresh()//下拉停止
  		uni.showToast({ title: '刷新成功', icon: 'success' });
  	},1500)
  },
}